package edu.sjsu.cs286.teodoro.cipresso.sprites;

import javax.microedition.lcdui.game.Sprite;

/**
 * Images and transformations used by BlueTankVehicleSprite
 * 
 * @author Teodoro Cipresso with lots of help from,
 *         http://developers.sun.com/techtopics/mobility/midp/articles/game/
 */
public interface IBlueTankSprite {

	static final String BLUE_TANK_NAME = "Blue Falcon";

	static final String BLUE_TANK_SELECT_IMG_SRC = "/selectblue.png";

	static final String BLUE_TANK_FIRE_IMG_SRC = "/bluetankfire.png";

	static final String BLUE_TANK_IMG_SRC = "/bluetank.png";

	static final String GREEN_TANK_NAME = "Green Raider";

	static final String GREEN_TANK_SELECT_IMG_SRC = "/selectgreen.png";

	static final String GREEN_TANK_FIRE_IMG_SRC = "/greentankfire.png";

	static final String GREEN_TANK_IMG_SRC = "/greentank.png";

	static final String RED_TANK_NAME = "Red Hellfire";

	static final String RED_TANK_SELECT_IMG_SRC = "/selectred.png";

	static final String RED_TANK_FIRE_IMG_SRC = "/redtankfire.png";

	static final String RED_TANK_IMG_SRC = "/redtank.png";

	static final String YELLOW_TANK_NAME = "Yellow Tracker";

	static final String YELLOW_TANK_SELECT_IMG_SRC = "/selectyellow.png";

	static final String YELLOW_TANK_FIRE_IMG_SRC = "/yellowtankfire.png";

	static final String YELLOW_TANK_IMG_SRC = "/yellowtank.png";
	
	static final String CANNON_BALL_IMG_SRC = "/cannonball.png";
	
	static final String CAMOUFLAGE_IMG_SRC = "/camouflage.png";
	
	static final String DESTROYED_TANK_ONE_IMG_SRC = "/destroyedtankone.png";
	
	static final String DESTROYED_TANK_TWO_IMG_SRC = "/destroyedtanktwo.png";
	
    static final String DESTROYED_TANK_THREE_IMG_SRC = "/destroyedtankthree.png";
    
    static final String BATTLE_LOST_IMG_SRC = "/battlelost.gif";
    
    static final String BATTLE_WON_IMG_SRC = "/battlewon.gif";
    
    static final String BATTLE_DRAW_IMG_SRC = "/battledraw.gif";

	static final int BLUE_TANK_COLOR = 0x009CFF;

	static final int GREEN_TANK_COLOR = 0x0CFF00;

	static final int RED_TANK_COLOR = 0xFF001E;

	static final int YELLOW_TANK_COLOR = 0xFFFC00;

	static final int MAX_ARMOR_POINTS = 100;
	
	static final int CANNON_COLLISION_ARMOR_POINTS = 10;
	
	static final int TANK_SPEED = 6;
	
	static final int CANNON_BALL_SPEED = 12;

	// transform for each of 16 directional vectors
	static final int[] tankTransformLookup = { Sprite.TRANS_NONE,
			Sprite.TRANS_NONE, Sprite.TRANS_NONE, Sprite.TRANS_MIRROR_ROT90,
			Sprite.TRANS_ROT90, Sprite.TRANS_ROT90, Sprite.TRANS_ROT90,
			Sprite.TRANS_MIRROR_ROT180, Sprite.TRANS_ROT180,
			Sprite.TRANS_ROT180, Sprite.TRANS_ROT180,
			Sprite.TRANS_MIRROR_ROT270, Sprite.TRANS_ROT270,
			Sprite.TRANS_ROT270, Sprite.TRANS_ROT270, Sprite.TRANS_MIRROR };

	// 16 directional vectors
	static final int[] tankFrameLookup = { 0, 1, 2, 1, 0, 1, 2, 1, 0, 1, 2, 1,
			0, 1, 2, 1 };

	/**
	 * invoked every cycle
	 */
	void update();

} // IBlueTankSprite()
